package com.beiming.libra.dao;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.beiming.libra.base.MyMapper;
import com.beiming.libra.domain.User;

@Mapper
public interface UserMapper extends MyMapper<User> {

  /**
   * 根据电话号码查询用户
   */
  List<User> selectByMobilePhone(@Param("mobilePhone") String mobilePhone);

  /**
   * 根据电话号码和类型查询用户
   */
  List<User> selectByMobilePhoneAndType(@Param("mobilePhone") String mobilePhone, @Param("userType") String userType);

  /**
   * 根据电话号码（用户名）和类型查询用户
   */
  List<User> selectByPhoneOrNameAndType(@Param("mobilePhone") String mobilePhone, @Param("userType") String userType);
  
  
  /**
   * 根据用户名和类型查询用户
   */
  List<User> selectByLoginNameAndType(@Param("loginName") String loginName, @Param("userType") String userType);


  /***
   * 查询用户列表。。分页查询
   */
  List<User> listUser(@Param("loginName") String loginName, @Param("mobilePhone") String mobilePhone,
      @Param("pageIndex") int pageIndex, @Param("pageSize") int pageSize);

  /***
   * 查询用户列表。。分页查询 总数
   */
  int listUserCount(@Param("loginName") String loginName, @Param("mobilePhone") String mobilePhone);
  /**
   * 根据用户类型查询所有用户
   */
  List<User> selectByType(@Param("userType") String userType);

  /**
   *  集合查询user
   * @param userList
   * @return
   */
  List<User> selectUser(List<User> userList);

  /**
   *  批量添加用户
   * @param userList1
   */
  void insertUserList(List<User> userList1);
}